local Class = require('lua.lang.Class')
local Varargs = require('lua.vm.Varargs')
local PairVarargs = require('lua.vm.PairVarargs')

--- @class ArrayPartVarargs : Varargs
--- @field offset number
--- @field v LuaValue[]
--- @field length number
--- @field more Varargs
local ArrayPartVarargs = Class {
	__extends = Varargs
}

--- @param v LuaValue[]
--- @param offset number
--- @param length number
--- @param more Varargs
function ArrayPartVarargs:new(v, offset, length, more)
	--- @type ArrayPartVarargs
	local o = {}
	o.v = v
	o.offset = offset
	o.length = length
	o.more = more
	return setmetatable(o, ArrayPartVarargs)
end

return ArrayPartVarargs